/*
 * photoelectric.c
 *
 *  Created on: Jun 2, 2024
 *      Author: LUCKBACK
 */
#include "gpio.h"
#include "photoelectric.h"
pes pesFlag;
// 反射传感器检测到障碍时为低电平，未检测到障碍为高电平
// 色标传感器检测到白色时为低电平，检测到绿色时为高电平

void pesGetStatus(void)
{
	// 通过反射传感器查找前方是否有障碍物
	// pesFrontFlag 为1时表示检测到障碍物
	if (HAL_GPIO_ReadPin(PES_FRONT_GPIO_PORT,PES_FRONT_PIN) == GPIO_PIN_SET)
	{
		pesFlag.pesFrontFlag = 0;	// 表示为检测到障碍物
	}
	else
	{
		pesFlag.pesFrontFlag = 1;	// 表示检测到障碍物
	}

	// 通过色标传感器检测颜色
	// 检测到白色时pesLeftFlag和pesRightFlag将会置1，代表检测到白线
	if (HAL_GPIO_ReadPin(PES_LEFT_GPIO_PORT,PES_LEFT_PIN) == GPIO_PIN_SET)
	{
		pesFlag.pesLeftFlag = 0;	// 表示为检测到绿色
	}
	else
	{
		pesFlag.pesLeftFlag = 1;	// 表示检测到白色
	}
	if (HAL_GPIO_ReadPin(PES_RIGHT_GPIO_PORT,PES_RIGHT_PIN) == GPIO_PIN_SET)
	{
		pesFlag.pesRightFlag = 0;	// 表示为检测到绿色
	}
	else
	{
		pesFlag.pesRightFlag = 1;	// 表示检测到白色
	}
}


